package JAVACORE_TRAINING.OOPs.ARRAY_AND_COLLECTIONS.DYNAMIC_ARRAYS.SAMPLES;

import java.util.ArrayList;
import java.util.List;

public class Sample02 {
	public static void main(String[] args) {
		// 1. Khai báo và khởi tạo
		List<Double> lisDouble = new ArrayList<>();

		// 2. Đưa phần tử vào mảng
		lisDouble.add(6.5);
		lisDouble.add(9.5);
		lisDouble.add(5.5);
		lisDouble.add(8.5);
		lisDouble.add(4.5);
		lisDouble.add(9.5);
		lisDouble.add(7.5);
		lisDouble.add(10.0);
		//Ngâm cứu cách sắp xếp với Comparator<E>;

		// 3. Thực thi các thuật toán sắp xếp
		// a. Bubbdy Sort
		System.out.println("-------Bubbdy Sort---------");
		List<Double> lisResult = Commons.BUBBLESORT(lisDouble);
		for (Double dValue : lisResult) {
			System.out.println("dValue = " + dValue);
		}

		// b. Insertion Sort
		System.out.println("-------Insertion Sort---------");
		lisResult = Commons.INSERTIONSORT(lisDouble);
		for (Double dValue : lisResult) {
			System.out.println("dValue = " + dValue);
		}

		// c. Selection Sort
		System.out.println("-------Selection Sort---------");
		lisResult = Commons.SELECTIONSORT(lisDouble);
		for (Double dValue : lisResult) {
			System.out.println("dValue = " + dValue);
		}
	}
}
